export default class Queue{
	//初始化
	constructor() {
		this.items = [];
	}

	// enter queue 方法
	enqueue(element){
		this.items.push(element);
	}

	// 查看队列是否为空
	isEmpty(){
		return this.items.length === 0;
	}

	// delete queue 方法
	dequeue(){
		if (this.isEmpty()) throw new Error("队列空了");
		return this.items.shift();
	}

	// 查看前端的元素
	front(){
		if (this.isEmpty()) throw new Error("队列空了");
		return this.items[0];
	}

	// 查看队列中元素的个数
	size(){
		return this.items.length;
	}

	// 将队列的元素以字符串的形式输出
	toString(){
		let result = "";
		for (let item of this.items){
			result += item + " ";
		}
		return result;
	}
}
